package com.boot.controller;

import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.Quarter;
import com.boot.entity.User;
import com.boot.pojo.Result;
import com.boot.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.time.LocalDateTime;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

@RestController
@RequestMapping("/echarts")
public class EcharsController {

    @Autowired
    private UserService userService;

    @GetMapping("/example")
    public Result get(){
        Map map  = new HashMap();
        map.put("x", CollUtil.newArrayList("Mon","Tue","Wed","Thu","Fri","Sat","Sun"));
        map.put("y", CollUtil.newArrayList(150,230,224,218,135,147,260));
        return new Result().success(map);
    }
    @GetMapping("/members")
    public Result members(){
        List<User> list = userService.list();
        int q1=0;
        int q2=0;
        int q3=0;
        int q4=0;
        for(User user:list){
            Date date = user.getCreateTime();
            Quarter quarter = DateUtil.quarterEnum(date);
            switch(quarter){
                case Q1:q1+=1;break;
                case Q2:q2+=1;break;
                case Q3:q3+=1;break;
                case Q4:q4+=1;break;
            }
        }
        Map map  = new HashMap();
        map.put("list",CollUtil.newArrayList(q1,q2,q3,q4));
        return new Result().success(map);
    }
}
